1. Field of the Invention
The present invention is related, in general, to data communications networks.
2. Description of the Related Art
Packet-switched data communications networks are data communications networks that provide individual communication channels between many independent sets of users via the use of packet switching. A packet is a sequence of binary digits that (a) includes data, control signals, and possibly error control signals, (b) is transmitted and switched as a composite whole, (c) is arranged in a specific format, such as a header part and a data part, and (d) may consist of several messages or may be part of a single message. Packet switching is the routing and the transferring of data by means of addressed packets so that (a) a channel is occupied only during the transmission of the packet, and (b) upon completion of the transmission of the packet, the channel is made available for the transfer of other traffic.
Theoretically, packet switched networks exist in a layered hierarchical format, where each xe2x80x9clayerxe2x80x9d performs set of functions associated with the layer. One example of such layered format is the well-known 7-layer ISO OSI (International Organization for Standardization Open Systems Interconnect) model.
The three lowermost layers of the OSI 7-layer model are the physical layer, the data link layer, and the network layer. OSI layer 1, the physical layer, defines functional electrical signals (e.g., voltages, currents, timing, etc.) associated with putting data onto network media (e.g., fiber optic links or twisted wire pair) and taking data off network media. OSI layer 2, the data link layer, defines functions associated with physically passing data from one node to another (e.g., making sure that data sent from a first node is received at a second node in a substantially error free fashion via defined functions such as error checking and retransmission). OSI layer 3, the network layer, defines functions associated with routing data from one node to another throughout a network (e.g., making sure that data originating at a first node, bound for a second node, where such first and second nodes are separated by many intermediate nodes, correctly traverses the network to arrive at its destination). Examples of OSI layer 3 protocols are (IP) internet protocol, IPX (internetwork packet exchange protocol), and AppleTalk protocol.
The ISO OSI 7-layer model was created to allow interoperability across competing vendors (i.e., to allow the creation and use of xe2x80x9copenxe2x80x9d systems where many different vendors products can be used to construct a network, in contradistinction to proprietary or xe2x80x9cclosedxe2x80x9d systems which are dependent upon one vendor). If the parameters laid down in the OSI 7-layer model are strictly followed, the foregoing layered approach will provide such interoperability, or open systems.
Unfortunately, in practical application, even when data communications networking vendors and systems engineers have tried to follow the defined OSI 7-layer open systems model, true interoperability has not generally been achieved. For example, three of the protocols most commonly used to provide OSI layer 2 servicesxe2x80x94Ethernet, HDLC (High-Level Data Link), and PPP (Point-to-Point) protocolsxe2x80x94are generally physically incompatible (e.g., the construction and arrangement of the packet headers are done differently) and logically incompatible (e.g., the protocols provide different services; for example Ethernet provides unicast, multicast, and broadcast transmission of data-link layer packets while HDLC only supports unicast transmission of data-link layer packets).
From a practical standpoint, the physical and logical incompatibilities of OSI layer 2 products (e.g., Ethernet or other products used in an OSI layer 2 fashion which provide OSI layer 3 services) by the systems engineers to support OSI layer 3 services substantially ensures that the OSI network layer 3 entities which are compatible with each other cannot communicate with each other if such OSI layer 3 network entities are installed and run in networks providing incompatible OSI layer 2 environments. For example, a first group of OSI layer 3 entities running in an OSI layer 2 Ethernet environment cannot generally communicate with a second group of entities running the same OSI layer 3 protocol, when the second group is running in an OSI layer 2 HDLC environment, due to the physical and/or logical incompatibilities between Ethernet and HDLC. As another example, a first group of OSI layer 3 entities running in an OSI layer 2 Ethernet environment cannot generally communicate with a second group of entities running the same OSI layer 3 protocol, when the second group is running in an OSI layer 2 PPP environment, due to the physical and/or logical incompatibilities between Ethernet and PPP.
It has been recognized by the inventors named herein (inventors), and such recognition forms part of the inventive content herein, that a need exists for a method and system to correct the damage to the open systems concept which has arisen from the foregoing-noted incompatibilities between different implementations of OSI layer 2. It has also been recognized by the inventors, and such recognition forms part of the inventive content herein, that the method and system should be essentially transparent to existing OSI layer 2 and layer 3 entities so that significant redesign of existing systems need not occur.
In one embodiment, a method for improving network compatibility includes but is not limited to the following: receiving a first-protocol data-link layer packet having a first-protocol address, the first-protocol data-link layer packet encapsulating a network-layer packet bound for a network layer entity native to a second-protocol data-link layer environment; directly translating the first-protocol data-link layer packet to at least one second-protocol data-link layer packet encapsulating at least a part of the network layer packet, where the at least one second-protocol data-link layer packet has addressing comprising a pre-defined second protocol companion address of the first-protocol address; and transmitting the at least one second-protocol data-link layer packet into the second-protocol data-link layer environment. In other embodiments, hardware and/or software effect the foregoing referenced method.
The foregoing is a summary and thus contains, by necessity, simplifications, generalizations, and omissions of detail; consequently, those skilled in the art will appreciate that the summary is illustrative only and is not intended to be in any way limiting. Other aspects, inventive features, and advantages of the present invention, as defined solely by the claims, will become apparent in the non-limiting detailed description set forth below.